package com.neuedu.web.framework;

import org.springframework.core.convert.converter.Converter;
import org.springframework.format.Formatter;
import org.springframework.stereotype.Component;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 项目：      springboot
 * 类名:       MyDateConverter
 * 创建时间：  2024/3/27 12：12
 * 描述 :
 * 作者 :     张金山
 * QQ :     314649444
 * Site:      https://jshand.gitee.io
 */
@Component
public class MyDateConverter implements Converter<String, Date>  {
    static String[] pattens = {
            "yyyy-MM-dd",
            "yyyy/MM/dd",
            "yyyy-MM-dd HH:mm:ss",
            "yyyy/MM/dd HH:mm:ss"
    };


    @Override
    public Date convert(String source) {
        Date date = null;
        try {

            if(source.matches("\\d{4}-\\d{1,2}-\\d{1,2}")){
                date = new SimpleDateFormat(pattens[0]).parse(source);
            }else if(source.matches("\\d{4}/\\d{1,2}/\\d{1,2}")){
                date = new SimpleDateFormat(pattens[1]).parse(source);
            }else if(source.matches("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}")){
                date = new SimpleDateFormat(pattens[2]).parse(source);
            }else if(source.matches("\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}")){
                date = new SimpleDateFormat(pattens[3]).parse(source);
            }

            return date;
        } catch (ParseException e) { }

        return null;
    }
}